home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / inet / ien / ien-201 < prev    next >
Text File  |  1988-12-01  |  18KB  |  326 lines

  1.  
  2.  
  3.  
  4.  
  5. Internet Experiment Note No. 201
  6.  
  7.                        INTERNET SHORT-TERM SERVICE GOALS
  8.                                 David D. Clark
  9.                       MIT Laboratory for Computer Science
  10.                    Computer Systems and Communications Group
  11.  
  12.  
  13. 1.  Introduction
  14.   The  purpose of this document is to identify the milestones which must be met
  15. in order to bring the current internet architecture to a stable  service  which
  16. can  be  used while the next round of research development is undertaken.  This
  17. document describes the functionality associated with the service to be offered,
  18. and identifies the work to be done in order to achieve  that  function.    This
  19. document  discusses  all  aspects  of the internet service, and is intended for
  20. planning purposes within  the  internet  research  community.    More  detailed
  21. documents  are available as RFC's that discuss the specifics of host conversion
  22. from NCP to TCP.
  23.  
  24.   This document should be viewed in the larger context of the long-term project
  25. planning which is now underway.  An assumption underlying this document is that
  26. it is necessary to identify carefully a service which  we  will  provide  in  a
  27. stable  form  at  this  time,  in  parallel  with  which  a  follow-on enhanced
  28. capability will be designed and implemented in  selected  hosts  and  gateways.
  29. This  current service should more or less mimic the quality of service provided
  30. today on the ARPANET by the NCP protocol, in  terms  of  supported  application
  31. protocols, reliability, responsiveness, etc.
  32.  
  33. 2.  Service Milestones
  34.   There  are  five  major  milestones in the achievement of the current service
  35. offering.  Two of these relate to support of TCP on the  ARPANET.    The  other
  36. three  relate  to  support of actual internet traffic.  These milestones are as
  37. follows:
  38.  
  39.   1. First use of internet for service (now happening!)
  40.  
  41.   2. NCP quality support for first TCP-only host on ARPANET (July 1982)
  42.  
  43.   3. NCP quality service for internet (?)
  44.                                        2
  45.  
  46.   4. Heavy load on internet (?)
  47.  
  48.   5. Last NCP host removed from ARPANET (January 1983)
  49.  
  50.   These   five  milestones  are  explained  and  elaborated  in  the  following
  51. paragraphs.
  52.  
  53. 3.  Milestone One:  Minimal Support for Internet Service
  54.   Internet service is being used today, as part of the Fort Bragg packet  radio
  55. demonstration  and  by the machines at COMSAT, which are not connected directly
  56. to the ARPANET.  I would characterize the service currently available to  these
  57. users  as  somewhat  less  than  minimal, in that it works only because certain
  58. special case adjustments have been made to individual hosts.  There  are  three
  59. important components to this milestone:
  60.  
  61.   a. Fragmentation  and  reassembly must be completely implemented through
  62.      the internet.  It is repeatedly brought  home  that  the  failure  to
  63.      implement   this   portion  of  the  protocol  causes  important  and
  64.      substantial confusion.  At the last internet meeting, the failure  of
  65.      the  TIU  to  support  reassembly once again prevented machines which
  66.      sent jumbograms from being used.    There  is  no  justification  for
  67.      continuing to sidestep this problem.
  68.  
  69.   b. Name  tables  on operational hosts must be upgraded so that they have
  70.      both the structure and capacity to name  all  of  the  hosts  in  the
  71.      internet.    In  the long term, we hope that it will not be necessary
  72.      for every host to  maintain  a  complete  internet  table,  since  we
  73.      postulate  the  existence of name servers to which an individual host
  74.      can turn to convert a name to a number.  However,  name  servers  are
  75.      not currently available, and the requirement for this name conversion
  76.      is immediate.
  77.  
  78.   c. ICMP  must  be  supported.    Without ICMP, one cannot achieve even a
  79.      minimal level of error recovery.
  80.  
  81.   These  subtasks  must  be  completed  quickly,  because  minimal  service  is
  82. important  for  the  sites in Europe who are momentarily being removed from the
  83. ARPANET. If the only requirement of the European community is user telnet, then
  84. the name table problem on server hosts such  as  TOPS  20  can  be  momentarily
  85. sidestepped, but the lack of fragmentation will prove totally unworkable, as it
  86. already has.
  87.                                        3
  88.  
  89. 4.  Milestone Two:  NCP Quality Support for TCP on ARPANET
  90.   Today, there exist hosts on the internet that speak only TCP.  However, these
  91. hosts  are  very  substantially  limited as to what they can do.  The intent of
  92. this milestone is to define a point at which a TCP-only host connected  to  the
  93. ARPANET  can obtain a level of service to all other hosts directly connected to
  94. the ARPANET that it might achieve using NCP  today.    This  goal  is  for  the
  95. ARPANET only, not the general internet.  This restriction is important, because
  96. it  defines  the  point at which a host converting from NCP to TCP can obtain a
  97. reasonable service to other hosts to which it previously had NCP access.
  98.  
  99.   In order to achieve this goal, there must be conversion facilities  available
  100. so  that  the  TCP  host  can  communicate  with  NCP-only hosts, and symmetric
  101. conversion routines must be available to permit NCP only hosts to  have  access
  102. to  the TCP host.  The exact function required for conversion in each direction
  103. is slightly different, since the  protocols  available  on  the  TCP  side  are
  104. sometimes  somewhat  more  powerful,  as  in  SMTP,  and  we  are interested in
  105. providing a better level of service for the TCP only host than we are  for  the
  106. unconverted NCP only host.  The specific requirements for this milestone are:
  107.  
  108.   a. Telnet forwarding in both directions.  This is a machine which speaks
  109.      both  TCP  and NCP, to which a user can log in using one protocol and
  110.      then request an outgoing telnet connection using the other protocol.
  111.  
  112.   b. FTP staging facility.  It appears to be rather difficult to build  an
  113.      automatic facility for linking two FTP transfers together end to end.
  114.      The  FTP  syntax  is  not  rich  enough so that one can describe to a
  115.      forwarder where the ultimate destination of the  transmission  is  to
  116.      be.    Thus,  since  this  is  only  a transition mechanism, it seems
  117.      sufficient to create an FTP  facility  which  is  operated  manually.
  118.      First the user transfers this file to an intermediate point, and then
  119.      he  manually  logs  in  to  this  intermediate point (or to the final
  120.      destination  machine)  to  transfer  the   file   to   its   ultimate
  121.      destination.
  122.  
  123.   c. Mail  forwarding.  This is a very important facility, since mail is a
  124.      very important part of the day to day business of  the  ARPANET,  and
  125.      because  it  will  be  a  highly  visible means by which we will make
  126.      conversion to TCP popular.  SMTP has been specifically implemented to
  127.      make possible the use of forwarders  to  provide  automatic  protocol
  128.      conversion.  As originally proposed, automatic forwarding of mail was
  129.      to  be  implemented  by causing every host on the ARPANET, whether or
  130.      not it supported TCP, to implement SMTP by this milestone.  It is not
  131.      clear that universal conformence can be achieved.    I  propose  that
  132.      this  strategy  be  modified to permit an alternative in which a more
  133.                                        4
  134.  
  135.      sophisticated forwarder will permit mail to flow from an NCP to a TCP
  136.      host  if  the  sender  of  the  mail  manually  constructs  a special
  137.      destination string which triggers forwarding.
  138.  
  139.      In order to achieve SMTP service, the following  sub-milestones  must
  140.      occur.    First,  the  definition of the protocol must be stabilized.
  141.      This  is  now  being  done.    Secondly,  mail  forwarders  must   be
  142.      implemented and brought to a service level.
  143.  
  144.   d. The  TCP-only  hosts  must  be  identified  and  brought  to  a full,
  145.      functional level.  Full function includes the following:
  146.  
  147.          -IP
  148.  
  149.          -ICMP
  150.  
  151.          -TCP
  152.  
  153.          -TELNET(User, Server)
  154.  
  155.          -FTP(User, Server)
  156.  
  157.          -SMTP(Sender, Receiver, Composer)
  158.  
  159.      As part of implementing this rather ambitious list of  protocols,  it
  160.      is  important  to identify and eliminate certain popular deficiencies
  161.      which appear in some existing  implementations.    For  example,  the
  162.      structure  which  exists  between  the  protocol layers for reporting
  163.      errors must be rich enough that network conditions such as  host-dead
  164.      or  imp-dead  correctly  terminate  the  network  connection with the
  165.      appropriate message for the user.  For another example the name table
  166.      must be upgraded from an ARPANET only to an internet facility.
  167.  
  168.   There is a great deal of work implied by the above list.  Currently  none  of
  169. the  forwarders,  either  TELNET,  FTP,  or  SMTP, exist except in experimental
  170. forms, and it is not clear that these experimental forms in  fact  provide  the
  171. basis for a service offering.  This milestone is seven months away, and it will
  172. require prompt effort to achieve it.
  173.  
  174.   It  is  not  the  purpose  of  this  milestone  to  encourage  (or  permit) a
  175. "preliminary" host implementation  suitable  only  for  the  relatively  benign
  176. ARPANET  environment.    The  host  implementor should be working toward all of
  177. these goals at once.  It is in  the  networks  that  these  milestones  can  be
  178. distinguished.
  179.                                        5
  180.  
  181. 5.  Milestone Three:  NCP Level Service Over Internet
  182.   This  is a somewhat vague milestone, and items which appear only on this list
  183. have a habit of being repeatedly postponed in  task  schedules.    Nonetheless,
  184. this  is an important goal, because it will establish the point at which we can
  185. stop tinkering with the service we provide and proceed on to the next level  of
  186. design.    It is important not to include too many items in this list, less the
  187. list grow so big that we never complete its implementation.  On the  otherhand,
  188. if  we  do  agree to include something on this list, then we must be consistent
  189. and sincere about implementing it  in  all  the  relevant  machines.    Partial
  190. implementation  is  not  a  useful  middle ground.  The following functions are
  191. nominated for this category.
  192.  
  193.   a. Robustness features.  Included in this category  are  replication  of
  194.      hardware  to  provide  an  alternative  path  in the case of a single
  195.      component failure.  This is particularly important in the SATNET link
  196.      to Europe.  Dual gateways may be required in other  locations,  where
  197.      important acces nets enter the transport core.
  198.  
  199.   b. Fault  detection  and isolation.  "Dissapearing packets" are still an
  200.      overly common aspect of internet communication.  It is important that
  201.      every host be equipped with suitable tools  to  detect  and,  to  the
  202.      extent  possible,  recover  from internetwork outages.  At a minimum,
  203.      all hosts must use  the  ICMP  facilities  of  host  unreachable  and
  204.      redirect  to recover from gateway outages or at least notify the user
  205.      that further communication is impossible.  It is also important  that
  206.      tools be put in place so that proper repair procedures are instituted
  207.      properly when a portion of the internet fails.
  208.  
  209.   c. Proper  handling  of  option  fields  in  the  protocols.  Currently,
  210.      options are most commonly processed by ignoring them.  We must decide
  211.      which options we are really serious about and  implement  them.    An
  212.      obvious topic for discussion is the set of options that deal with the
  213.      source route function.  This is a good example of where we must do an
  214.      all  or  nothing  implementation.   Isolated implementation of source
  215.      route is demonstrably useless.
  216.  
  217.   d. Access control.  Certain mechanisms for  controlling  access  to  the
  218.      internet  must  be  implemented as part of the interim service.  At a
  219.      minimum, these include  login  features  in  the  TAC.    It  may  be
  220.      necessary  to implement some further controls inside the gateway, but
  221.      as yet no one has conceived of what those mechanisms could be.   This
  222.      topic requires consideration.
  223.  
  224.   e. Name  servers.   The number of hosts, and thus the number of names in
  225.                                        6
  226.  
  227.      the  internet  is  much  larger  than that of the ARPANET.  Many name
  228.      tables are overflowing. One way to avoid this problem is by providing
  229.      name servers to which a host  can  turn  in  order  to  translate  an
  230.      unknown  name  into  an  internet address.  In some respects, a namer
  231.      server is a very simple mechanism, but it is very easy to  develop  a
  232.      name  server mechanism which is so complicated as to be unrealizable.
  233.      Some firm decision must be made as to the  level  of  service  to  be
  234.      provided  by  name  servers  in  the internet, and then to provide an
  235.      implementation  strategy  whereby  name   servers   are   universally
  236.      available.
  237.  
  238. 6.  Milestone Four:  Heavy Traffic Over the Internet
  239.   This  is  difficult  milestone  to quantify, since we do not know the rate at
  240. which traffic will build up, nor what maximum traffic level  we  must  support.
  241. Nonetheless,  it seems clear that the existing gateway implementations will not
  242. support the expected load.   There  are  three  improvements  which  have  been
  243. proposed to address this topic.  All of these depend on replacement of existing
  244. gateways with C/70 gateways or recoding of the existing software, so that there
  245. is additional space available.
  246.  
  247.   a. Upgrade the net interface software so that it shows more intelligence
  248.      about  interacting with the support network.  For example, the driver
  249.      for the ARPANET should count RFNMs, and the  driver  for  the  SATNET
  250.      should  interact properly with the selective refusal mechanism of the
  251.      SATNET's non blocking interface.
  252.  
  253.   b. More buffers in the gateway.
  254.  
  255.   c. Improved instrumentation in the gateway, so that it  is  possible  to
  256.      determine where bottlenecks are.
  257.  
  258.   In  addition  to  gateway  tuning,  we need to achieve a minimum level of TCP
  259. "good behavior".  The occurrence of Silly Window Syndrome under heavy load must
  260. be avoided, or the net will clog up totally.   Hosts  must  provide  sufficient
  261. buffering to obtain reasonable throughput under long-delay situations.
  262.  
  263.   Finally, we must begin to plan for substantial congestion control problems in
  264. the  internet.    The  existing  algorithm,  which  is based on a source quench
  265. message from the gateway to the host, has not been shown to work well.  In  the
  266. short  run,  we  have  not identified any alternative mechanism which will work
  267. better.  At a minimum, every host and gateway should implement  ICMP,  so  that
  268. source  quench  messages  can  at  least  be  sent  and received.  More work is
  269. required in this area to determine what the proper action should be.
  270.                                        7
  271.  
  272.   Milestones  three and four are closely related, and could have been combined.
  273. The distinction is that milestone three contains things that must be done  even
  274. if  the  offered load is small.  Adequate performance may depend on new gateway
  275. hardware, which may delay milestone four.    If  this  is  so,  users  will  be
  276. interested in milestone three as a separate goal.
  277.  
  278. 7.  Milestone Five:  NCP Service is Discontinued in the ARPANET
  279.   This  milestone  has  occasionally been described as a very important one for
  280. the internet implementors.  In fact, most of the work necessary at the internet
  281. level to achieve this goal  will  have  been  done  as  part  of  the  previous
  282. milestones.    There  are  essentially  two  important  subcomponents  of  this
  283. milestone:
  284.  
  285.   a. The TCP TAC must be deployed.  This is very important, and should  be
  286.      done  somewhat  in  advance of this actual milestone to allow for the
  287.      following point.
  288.  
  289.   b. Facilities for testing and debugging new TCPs  must  be  conveniently
  290.      available  on  the  ARPANET, so that hosts converting from NCP to TCP
  291.      can verify the correct operation.
  292.  
  293.   The major effort in achieving this milestone is  the  implementation  of  the
  294. previously  itemized  list  of protocols on every host attached to the ARPANET.
  295. This task will require substantial effort, but this effort is provided  by  the
  296. system  maintainers  for  the  systems  in  question.  Our responsibility is to
  297. provide the proper support for those implementors.
  298.  
  299.   In addition to the testing and debugging facility provided above,  the  other
  300. important requirement is informal documentation that provides help and guidance
  301. to  implementors  beyond  the  actual protocol specification.  A number of ways
  302. have been proposed to provide this informal help.   One  easy  strategy  is  to
  303. distribute  a collection of TCP design documents for the TCPs that have already
  304. been implemented.  I am currently preparing a number of reports that attempt to
  305. gather together the insights about TCP and IP which are well understood in  the
  306. implementation  community  but  may  not be obvious to first time implementors.
  307. First  topics  include  strategies  for  reassembly  and  packet  resequencing,
  308. management  of  window and acknowledgement algorithms, and proper management of
  309. names, addresses, routes, and ports.  Anyone wishing to contribute to this work
  310. should contact me.  A table of contents will be out soon.
  311.  
  312.   There are a large  number  of  preliminary  milestones  associated  with  the
  313. upgrade  of  all  ARPANET  hosts  to  TCP,  such  as document distribution, and
  314. interaction with the various host maintainers, and managers.    These  subgoals
  315. are  not  outlined  in  this document, but are described in a separate document
  316. recently released by Jon Postel.
  317.                                        8
  318.  
  319. 8.  Priorities
  320.   The preceding discussion of the five service milestones has presented a rough
  321. outline  of subtasks necessary to achieve these five goals.  A separate project
  322. milestone document, now being prepared, lists these individual tasks in a  more
  323. structured form, and provides dates and probabilities of success where known.
  324.  
  325. -------
  326.